Jump to content

- Functions

- # IsUserInGroup()

  Followers 0

  Lua → VBScript

  This function checks if the current script user is member of the given group.

  Please see the Introduction chapter for some usage instructions.

      ------------------------------------------------------------------
      -- IsUserInGroup
      --
      -- Checks if the current script user is in the given group
      --
      -- Parameter:
      --   sGroup          group number or name
      --
      -- Return:
      --   boolean
      ------------------------------------------------------------------
      function IsUserInGroup ( sGroup )

          PBXScript.OutputTrace ("----------> IsUserInGroup ( " .. sGroup .. " )")

          local bReturn = false
          local oUsers  = nil

          oUsers = PBXScript.GetUserByAddress(sGroup)
          if (oUsers ~= nil) then

              for i = 1, #oUsers do

                  PBXScript.OutputTrace ("Found user '" .. oUsers[i]:Name() .. "'")

                  if (oUsers[i]:Name() == PBXUser.Name()) then
                      PBXScript.OutputTrace ("Current script user '" .. PBXUser.Name() .. "' is member of the group '" .. sGroup .. "'!")
                      bReturn = true
                  end
              end
          end

          PBXScript.OutputTrace ("bReturn = " .. tostring(bReturn))
          PBXScript.OutputTrace ("<---------- IsUserInGroup")

          return bReturn
      end

  This function makes use of the Server Script API functions PBXConfig.GetUserByAddress() to resolve all users in the given group and PBXUser.Name() to get the name of the current script user. It also uses PBXScript.OutputTrace() to write trace information into the SwyxServer trace file.

  This function was converted from VBScript into Lua from the initially posted version in this forum topic.

  By Tom Wellige

  - June 5, 2022
  Share
  Share
  Followers 0
  Previous Page IsUserFree()
  Next Page IsUserLoggedOff()

## Important Information

By using this site, you agree to our Terms of Use and have taken note of our Privacy Policy.
We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.